package com.insigma.business.qrcode.soldier.dto;


import com.insigma.business.qrcode.common.vo.DescEnum;

import java.util.LinkedHashMap;
import java.util.Map;


public enum StatsDataTypeEnum implements DescEnum {
    
    SOLDIER_BASIC_INFO("退役军人基础数据"),

    
    SOLDIER_MAIN_SCREEN("退役军人主屏数据"),

    
    SOLDIER_SERVICE_STATION("统计服务站数据"),

    
    SOLDIER_DIFFICULTY_ASSISTANCE("困难帮扶驾驶舱数据"),

    
    SOLDIER_DIFFICULTY_MAP("困难地图"),

    
    SOLDIER_EMPLOYMENT("就业驾驶舱数据"),

    
    SOLDIER_SCENE_EMPLOYMENT("SCENE的就业数据", 12 * 60 * 60 * 1000),

    
    SOLDIER_SERVICE_EVALUATION("考评数据驾驶舱"),

    
    NEW_SOLDIER_MAIN_SCREEN("主屏-新版本", 24 * 60 * 60 * 1000),

    
    NEW_SC_SOLDIER_MAIN_SCREEN("主屏-上城新版本", 24 * 60 * 60 * 1000),

    
    NEW_QX_MAIN_SCREEN("区县总览驾驶舱", 24 * 60 * 60 * 1000),

    
    NEW_QX_COME_VISIT_SCREEN("区县走访来访驾驶舱", 24 * 60 * 60 * 1000),

    
    NEW_QX_WARNING_SCREEN("预警驾驶舱", 24 * 60 * 60 * 1000),

    
    NEW_QX_JOB_PLACEMENT_SCREEN("就业安置驾驶舱", 24 * 60 * 60 * 1000),

    
    NEW_QX_JOB_COME_SCREEN("就业走访驾驶舱", 24 * 60 * 60 * 1000),

    
    NEW_QX_MERCHANT_SCREEN("志愿服务驾驶舱", 24 * 60 * 60 * 1000),

    
    SUPPORT_ARMY_SCREEN("拥军支前驾驶舱", 2* 24 * 60 * 60 * 1000),

    
    NEW_SOLDIER_JOB_SCREEN("就业援助", 24 * 60 * 60 * 1000),

    
    LATEST_SOLDIER_JOB_SCREEN("就业援助", 24 * 60 * 60 * 1000),

    
    SOLDIER_THREE_YEAR("3年数据", 24 * 60 * 60 * 1000),

    
    DIGITAL_SOCIETY("数字社会", 24 * 60 * 60 * 1000),

    YRYD("一人一档", 24 * 60 * 60 * 1000),

    
    HYFB("行业分布", 24 * 60 * 60 * 1000),

    
    SZMH("余杭数字门户", 24 * 60 * 60 * 1000),

    
    GSHM("拱墅门户", 24 * 60 * 60 * 1000),
    
    GSHMOUT("拱墅外部接口", 24 * 60 * 60 * 1000),

    
    VIRTUAL_COMMAND("虚拟指挥室", 24 * 60 * 60 * 1000),

    
    SOLDIER_ALL_YEAR("所有就业的人员统计", 24 * 60 * 60 * 1000);

    StatsDataTypeEnum(String desc) {
        this.desc = desc;
        this.expireTime = 24 * 60 * 60 * 1000;
    }

    StatsDataTypeEnum(String desc, Integer expireTime) {
        this.desc = desc;
        this.expireTime = expireTime;
    }

    
    private String desc;

    
    private Integer expireTime;

    @Override
    public String getDesc() {
        return desc;
    }

    public Integer getExpireTime() {
        return expireTime;
    }

    
    public static StatsDataTypeEnum getByEnumName(final String enumName) {
        for (StatsDataTypeEnum element : values()) {
            if (element.name().equals(enumName)) {
                return element;
            }
        }
        return null;
    }

    
    public static Map<String, String> getName2DescMap() {

        Map<String, String> name2TitleMap = new LinkedHashMap<>();

        for (StatsDataTypeEnum element : values()) {
            name2TitleMap.put(element.name(), element.desc);
        }

        return name2TitleMap;
    }
}
